|
|||||
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|
![]() |
IRQ Conflicts One of the most common areas of IRQ conflict involves serial (COM) ports. You may have noticed in the preceding two sections that two IRQs are set aside for two COM ports. IRQ 3 is used for COM2:, and IRQ 4 is used for COM1:. The problem occurs when you have more than two serial ports in a systema situation that is entirely possible, because a PC can support up to four COM ports. The problems arise here because most people purchase poorly designed COM port boards that do not allow IRQ settings other than 3 or 4. What happens is that they end up setting COM3: to IRQ 4 (sharing it with COM1:), and COM4: to IRQ 3 (sharing it with COM2:). This is not acceptable, as it will prevent you from using the two COM ports on any one of the interrupt channels simultaneously. This was somewhat acceptable under plain DOS, because single-tasking (running only one program at a time) was the order of the day, but is totally unacceptable with Windows and OS/2. If you must share IRQs, you can usually get away with sharing devices on the same IRQ as long as they use different COM ports. For instance, a scanner and an internal modem could share an I IRQ, although if the two devices are used simultaneously a conflict will result. The best solution is to purchase a multi-port serial I/O card that will allow interrupt sharing among COM ports. As a side note, also make sure that the COM board you purchase uses a buffered 16550A or higher type UART (Universal Asynchronous Receiver Transmitter) chip rather than the slow, unbuffered 16450 types. If a device listed in the table is not present, such as the motherboard mouse port (IRQ 12) or parallel port 2 (IRQ 5), then you can consider those interrupts as available. For example, a second parallel port is a rarity, and most systems will have a sound card installed and set for IRQ 5. Also, on most systems IRQ 15 is assigned to a secondary IDE controller. If you do not have a second IDE hard drive, you could disable the secondary IDE controller to free up that IRQ for another device. I/O Port AddressesYour computers I/O ports enable you to attach a large number of important devices to your system to expand its capabilities. A printer attached to one of your systems LPT (parallel) ports enables you to make a printout of the work on your system. A modem attached to one of your systems COM (serial) ports enables you to use telephone lines to communicate with computers thousands of miles away. A scanner attached to an LPT port or a SCSI host adapter enables you to convert graphics or text to images and type that you can use with the software installed on your computer. Most systems come configured with at least two COM (serial) ports and one LPT (parallel printer) ports. The two serial ports are configured as COM1: and COM2:, and the parallel port as LPT1. The basic architecture of the PC provides for as many as four COM ports (1 through 4) and three LPT ports (1 through 3). If you use more than two COM ports, make sure that COM3: and COM4: have unique IRQ settings and do not share those with COM1: and COM2:. In general, on most machines both COM1: and COM3: use IRQ 4; and both COM2: and COM4: use IRQ 3.
Every I/O port in your system uses an I/O address for communication. This address, which is in the lower memory ranges, is reserved for communication between the I/O device and the operating system. If your system has multiple I/O cards, each card must use a different I/O address; if not, your system will not be able to communicate with the devices reliably. The I/O addresses that your ports use depend on the type of ports. Table 1.10 shows the I/O addresses expected by the various standard ports in a PC system.
Besides your serial and parallel ports, other adapters in your system use I/O address. Quite truthfully, the I/O addresses for the serial and parallel ports are fairly standard; it is unlikely that you will run into problems with them. The I/O addresses used by other adapters are not standardized, however, and you may have problems finding a mix of port addresses that works reliably. In the next section, you learn some of the techniques that you can use to solve this problem. Resolving Resource ConflictsThe resources in a system are limited. Unfortunately, the demands on those resources seem to be unlimited. As you add more and more adapter cards to your system, you will find that the potential for resource conflicts increases. If your system is fully PnP-compatible, then potential conflicts should be resolved automatically. How do you know whether you have a resource conflict? Typically, one of the devices in your system stops working. Resource conflicts can exhibit themselves in other ways, though. Any of the following events could be diagnosed as a resource conflict:
In the following sections, you learn some of the steps that you can take to head off resource conflicts or to track them down when they occur.
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |